Maglev: A Fast and Reliable Software Network Load Balancer
نویسندگان
چکیده
Maglev is Google’s network load balancer. It is a large distributed software system that runs on commodity Linux servers. Unlike traditional hardware network load balancers, it does not require a specialized physical rack deployment, and its capacity can be easily adjusted by adding or removing servers. Network routers distribute packets evenly to the Maglev machines via Equal Cost Multipath (ECMP); each Maglev machine then matches the packets to their corresponding services and spreads them evenly to the service endpoints. To accommodate high and ever-increasing traffic, Maglev is specifically optimized for packet processing performance. A single Maglev machine is able to saturate a 10Gbps link with small packets. Maglev is also equipped with consistent hashing and connection tracking features, to minimize the negative impact of unexpected faults and failures on connection-oriented protocols. Maglev has been serving Google’s traffic since 2008. It has sustained the rapid global growth of Google services, and it also provides network load balancing for Google Cloud Platform.
منابع مشابه
Network management services based on the OpenFlow environment
The subject of this article is network management through web service calls, which allows software applications to exert an influence on network traffic. In this manner, software can make independent decisions concerning the direction of requests so that they can be served as soon as possible. This is important because only proper cooperation including all architecture layers can ensure the bes...
متن کاملA Load Balancer for a Multi-Stage Router Architecture
Multi-stage software router architectures permit to overcome several limitations inherent to single stage software routers. One of the key elements of the multi-stage architecture under study are the load balancers, which are used to distribute the load among backend routers. However, using a PC (Personal Computer) as a load balancer could create a performance bottleneck in the overall architec...
متن کاملThe Sandpile Load Balancer and Latency Minimization Problem
I present the sandpile load balancer, an application of the abelian sandpile model to dynamic load balancing. The sandpile load balancer exploits the self-organized criticality of the abelian sandpile model to distribute web traffic across a network of servers. I also propose the sandpile load balancer latency minimization problem in which the goal is to minimize the latency of packets across t...
متن کاملA New Reliable Controller Placement Model for Software-Defined WANs
Software-Defined Network (SDNs) is a decoupled architecture that enables administrators to build a customizable and manageable network. Although the decoupled control plane provides flexible management and facilitates the task of operating the network, it is the vulnerable point of failure in SDN. To achieve a reliable control plane, multiple controller are often needed so that each switch must...
متن کاملPerformance Impact of Load Balancers on Server Farms
Server Farms have gained popularity for providing scalable and reliable computing / Web services. A load balancer plays a key role in this architecture, serving as a “traffic cop” to direct the requests to suitable servers. Selecting and using the proper load balancer to match the characteristics of the servers will have a significant performance impact. This paper examines some commonly used l...
متن کامل